// Lightweight OLED UI wrapper (SSD1306 128x64)
// Provides init, startup progress rendering, page rotation and button paging.

#pragma once

#include <Arduino.h>
#include "config.h"

// Tunables (override before include if desired)
#ifndef OLED_TEXT_SIZE
#define OLED_TEXT_SIZE 1
#endif

#ifndef OLED_LINE_GAP
#define OLED_LINE_GAP 6
#endif

#ifndef OLED_ROTATE_MS
#define OLED_ROTATE_MS 2000UL
#endif

#ifndef OLED_APP_VERSION
#define OLED_APP_VERSION "v1.0"
#endif

#ifndef OLED_BRAND_TAG
#define OLED_BRAND_TAG "BD3ND"
#endif

void oledInit(int pinSda, int pinScl);
void oledStartupStep(const __FlashStringHelper *title, uint8_t step, uint8_t total);
void oledUpdate(const AppConfig &cfg, int pinKey, int pinSql, int pinPtt);

